﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.ComponentModel.DataAnnotations.Schema;
using System.Data.Entity.ModelConfiguration;
using ConfeccionesJR.Entites;

namespace ConfeccionesJR.Repository.Mapping
{
    public class PROFORMAMap : EntityTypeConfiguration<PROFORMA>
    {
        public PROFORMAMap()
        {
            this.HasKey(p => p.Id);

            this.Property(p => p.Fecha)
                .IsRequired();

            this.Property(p => p.Total)
                .HasPrecision(18, 2);

            this.Property(p => p.CondicionPago)
                .HasMaxLength(200);

            this.Property(p => p.Vigencia)
                .HasMaxLength(200);

            this.Property(p => p.TiempoEntrega)
                .HasMaxLength(200);

            this.ToTable("PROFORMA");
            this.Property(p => p.Id).HasColumnName("Id");
            this.Property(p => p.Fecha).HasColumnName("Fecha");
            this.Property(p => p.Total).HasColumnName("Total");
            this.Property(p => p.CondicionPago).HasColumnName("CondicionPago");
            this.Property(p => p.Vigencia).HasColumnName("Vigencia");
            this.Property(p => p.TiempoEntrega).HasColumnName("TiempoEntrega");

            this.HasRequired(p => p.CLIENTE)
                .WithMany(p => p.PROFORMAs)
                .HasForeignKey(p => p.clienteId);
        }
    }
}
